import request from '../../utils/request'

Page({

  /**
   * 页面的初始数据
   */
  data: {
    phoneNumber: '15361819220',
    vcode:'',
    isCountDown: false,
    // 倒计时的数字
    countNum: 60
  },

  getPhoneNumber(event) {
    this.setData({
      phoneNumber: event.detail.value
    })
  },
  getVcodeInput(event) {
    this.setData({
      vcode: event.detail.value
    })
  },
  
  // 获取验证码，并提示，同时开启倒计时
  getVcode() {
    // 如果倒计时中，点击无效
    if(this.data.isCountDown){
      return
    }

    // TODO:判断手机号码格式是否正确

    // 开启倒计时
    this.setData({
      isCountDown: true
    })

    // 每一秒减1
    let timer = setInterval(() => {
      let num = this.data.countNum
      // 如果倒计时数字为1的话，直接结束倒计时
      if (num === 1) {
        // 清除定时器
        clearInterval(timer)
        this.setData({
          isCountDown:false,
          countNum:60
        })
      } else {
        // 正常每秒-1
        this.setData({
          countNum: num - 1
        })
      }
    }, 1000)
    // 请求验证码
    this.queryUserVcode()
  },

  async queryUserVcode(){
    let data = await request({
      url:'/api/user/vcode',
      data:{
        phone:this.data.phoneNumber
      }
    })
    // 提示验证码
    wx.showToast({
      title: data.vcode+'',
      icon:'none',
      duration:5000
    })
  },
  // 手机号码登录
  async phoneLogin(){
    // TODO，检验手机号码和验证码的格式

    let data = await request({
      url:'/api/user/login',
      method:'POST',
      data:{
        phone:this.data.phoneNumber,
        vcode:this.data.vcode
      }
    })

    // 提示
    wx.showToast({
      title: data.message,
      // toast显示的时候会触发success
      success: () => {
        // toast不显示时，跳转
        setTimeout(() => {
          // 返回上一个页面
          wx.switchTab({
            url: '/pages/me/me',
          })
        }, 1500)
      }
    })

    // 存token
    wx.setStorageSync('token', data.token)

  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})